package com.ym.medical.enums;

import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.databind.util.StdConverter;
import com.ym.common.annotations.EnumDescription;
import com.ym.common.constant.DictEnum;

/**
 * 帖子发布状态
 */
@EnumDescription("帖子发布状态")
public enum PublisStatusEnum implements DictEnum {
    //--------------------start-----------------

    /**
     * 待发布
     */
    NO_PUBLISH("01","待发布"),
    /**
     * 审核中
     */
    UNDER_REVIEW("02","审核中"),
    /**
     * 已驳回
     */
    REJECT("03","已驳回"),
    /**
     * 已发布
     */
    OVER_PUBLISH("04","已发布"),

    //--------------------end-------------------
    ;

    private String key;

    private String value;

    PublisStatusEnum(String key, String value) {
        this.key = key;
        this.value = value;
    }

    @Override
    public String getKey() {
        return this.key;
    }

    @Override
    public String getValue() {
        return this.value;
    }

    /**
     * 序列化使用
     */
    public static class Covert extends StdConverter<String, JSONObject> {
        @Override
        public JSONObject convert(String value) {
            return DictEnum.valueOfJson(PublisStatusEnum.class,value);
        }
    }
}
